package br.com.sgpv2.service.faixacomparativo;

import java.util.List;

import br.com.sgpv2.controler.NegocioExeception;
import br.com.sgpv2.entity.faixacomparativo.FaixaComparativo;

/**
 * Método responsavel pela interface de servicos de faixa de comparativo.
 */
public interface FaixaComparativoService {

	/**
	 * Método que salva uma entidade faixa comparativo no banco de dados.
	 */
	void salvar(FaixaComparativo faixaComparativo) throws Exception;

	/**
	 * Método que altera uma entidade faixa comparativo no banco de dados.
	 * 
	 * @throws NegocioExeception
	 */
	void alterar(FaixaComparativo faixaComparativo) throws NegocioExeception;

	/**
	 * Método que lista todas as entidades faixa comparativo do banco de dados.
	 */
	List<FaixaComparativo> listar() throws Exception;

	/**
	 * Método que remove uma entidade faixa comparativo no banco de dados.
	 */
	void remover(FaixaComparativo faixaComparativo) throws Exception;

	/**
	 * Método que busca uma entidade faixa comparativo do banco de dados.
	 */
	FaixaComparativo buscar(Integer pk) throws NegocioExeception;

	/** Método que altera o faixa comparativo. */
	void saveOrUpdate(FaixaComparativo faixaComparativo);

	/** Método que consulta todas as faixas de comparativo pela descrição. */
	List<FaixaComparativo> consultarPorDescricao(String descricao);

	/** Método que consulta todas as faixas de comparativo pelo filtro. */
	public List<FaixaComparativo> consultarFaixasComparativoPorFiltro(
			String descricao);

}
